package hocusPocus.Partie;

import java.util.ArrayList;

/**
 * Thread permettant de s'assurer qu'il y a toujours,
 * dans la mesure du possible, 3 cartes dans le grimoire 
 * des joueurs
 *
 */
public class ThreadVerificationGrimoire extends Thread{
	private Plateau plateau;
	private ArrayList<Joueur> listeJoueurs;
	protected volatile boolean running = true;

	public ThreadVerificationGrimoire() {
		this.plateau = Plateau.getInstance();
		this.listeJoueurs = plateau.getListeJoueurs();
	}

	public void stopMe() {
		this.running = false;
	}

	public void restartMe() {
		this.running = true;
	}

	public void run() {
		while(true) {
			while(running) {
				for(int i = 0; i < listeJoueurs.size(); i++) {
					while(listeJoueurs.get(i).getGrimoire().size() < 3) {
						if(listeJoueurs.get(i).getMain().size() > 0 ) {
							listeJoueurs.get(i).transfertMainVersGrimoire();
							Jeu.getInstance().getInterfacePlateau().rafraichirPanelListeJoueurs();
						}
						else
							break;
					}
				}
			}
		}
	}
}
